Полезные ссылки

 https://git.gosuslugi.local/pgs2-rtlabs/source/ervu-mz-monitor-service/-/tree/dev  - GIT

https://pgs-dev.rtlabs.ru/service/ervu-mz-monitor-service/swagger-ui#/- swagger


Описание и назначение

ervu-mz-monitor-service - cервис читает топики mz.out.request, mz.out.response, mz.petition.in.request и mz.petition.in.response. Пишет информацию по межведомственным запросам в базу, используется для отображения на фронте ЕРВУ. С сервисами напрямую не взаимодействует

Сервис обеспечивает следующие функции:

  • Получение данных через кафку
  • Сохранения и обновление данных в бд

Отображение на фронте

Журнал входящих и исходящих сообщений СМЭВ

Получает от сервиса все МВЗ с наименованиями (REST https://pgs-dev.rtlabs.ru/service/ervu-mz-monitor-service/dictionaries/mvzGroups/v1  ). В дальнейшем их возможно использовать для фильтрации в поиске


KAFKA

CONSUMER

mz.out.request

 Развернуть исходный код

mz.out.response

 Развернуть исходный код

mz.petition.in.request

 Развернуть исходный код

mz.petition.in.response

 Развернуть исходный код

PRODUCER

pgs.proxy.endpoints.access.info

 Развернуть исходный код

Результатом является запись в БД endpoints-access-info записей с эндипоинтами сервиса

SELECT * FROM public.access_info
WHERE app_name ='ervu-mz-monitor-service'

REST API контроллеры 

GET /service/ervu-mz-monitor-service/dictionaries/mvzGroups/v1

Назначение - получение всех актуальных МВЗ

Тело запроса - отсутствует

response Развернуть исходный код


GET /service/ervu-mz-monitor-service/download-xml/v1/{mzId}

Назначение - получение XML по ИД запроса

параметр mzId - идентификатор запроса из БД (ervu-mz-monitor.ervu_interagencies_journal.id)

Тело запроса - отсутствует

response Развернуть исходный код



GET /service/ervu-mz-monitor-service/getDictionary/type-mz

Назначение - получение справочника имен МВЗ

Тело запроса - отсутствует

response Развернуть исходный код

POST /service/ervu-mz-monitor-service/records/v1/search

Назначение - постраничное получение списка межведов

Тело запроса - 

 Развернуть исходный код



Ответ

response Развернуть исходный код

POST /service/ervu-mz-monitor-service/records/v2/search

Назначение - постраничное получение списка межведов

Тело запроса - 

 Развернуть исходный код


Ответ

response Развернуть исходный код

База данных  ervu-mz-monitor

Сервис имеет собственную базу данных, состоящую из 3 таблиц:

  • ervu_interagencies_journal
  • mvz_groups
  • mvz_names

Структура таблиц

  • Таблица ervu_interagencies_journal

Код
Тип данных
Not NULL
PK
idUUID++
internal_idUUID

modecharacters varying (consumer/producer)+
created_attimestamp without time zone+
updated_attimestamp without time zone+
bodyjsonb+
filesjsonb+
directioncharacters varying (response/request)+
vk_idUUID

mvz_names_idUUID+
xmlbytea

commissariat_namevarchar(255)

recruit_last_namevarchar(100)

recruit_first_namevarchar(100)

recruit_middle_namevarchar(100)

message_idUUID+
snilsvarchar(15)

  • Таблица mvz_groups

Код
Тип данных
Not NULL
PK
idUUID++
namevarchar(512)+
  • Таблица mvz_names

Код
Тип данных
Not NULL
PK
idUUID++
classvarchar(255)+
additional_fieldsjsonb

external_systemvarchar(100)

hiddenboolean

group_idUUID+


Схема взаимодействия таблиц

mvz_groupsКодТип данныхNot NullPrimary keyidUUID++namevarchar(512)+mvz_namesКодТип данныхNot NullPrimary keyidUUID++classvarchar(255)+additional_fieldsjsonbexternal_systemvarchar(100)hiddenbooleangroup_idUUID+ervu_interagencies_journalКодТип данныхNot NullPrimary keyidUUID++internal_idUUIDmodecharacters varying (consumer/producer)+created_attimestamp without time zone+updated_attimestamp without time zone+bodyjsonb+filesjsonb+directioncharacters varying (response/request)+vk_idUUIDmvz_names_idUUID+xmlbyteacommissariat_namevarchar(255)recruit_last_namevarchar(100)recruit_first_namevarchar(100)recruit_middle_namevarchar(100)message_idUUID+snilsvarchar(15)


Схема взаимодействия сервиса

ervu-mz-monitor-service
endpoints-access-info
endpoints-access-info
pgs.proxy.endpoints.access.info

ervu-mz-monitor

mz..out.request
mz..out.response
mz..petition.in.response
mz..petition.in.request
FRONT_ERVU
HTTPS

Написать комментарий...